package com.itlong.cloud.operate.service;

import com.itlong.cloud.POJO.VO.operate.OperateAddressVO;
import com.itlong.cloud.POJO.VO.operate.OperateAreaAddressVO;
import com.itlong.cloud.POJO.VO.operate.OperateCountryAddressVO;

import java.util.List;

/**
 * <desc>
 *      运营-运营管理-项目对应地址信息接口。
 * <desc/>
 *
 * @createDate 2017/10/23.
 */
public interface IOperateAddressManageService {

    /**
     * <desc>
     *      获取国家信息。
     * <desc/>
     *
     * @param
     * @return 返回国家列表
     * @author shengen.T
     * @createDate 2017/10/23
     */
    List<OperateCountryAddressVO> getCountryList() throws Exception;

    /**
     * <desc>
     *      获取区域信息列表。
     * <desc/>
     *
     * @param  countryId 国家ID
     * @return  返回区域列表
     * @author shengen.T
     * @createDate 2017/10/23
     */
    List<OperateAreaAddressVO> getAreaList(String countryId) throws Exception;

    /**
     * <desc>
     *      获取某个地址的直接下属地址
     * <desc/>
     *
     * @param parentAddressId 父地址id
     * @return
     * @author Chunjian.G
     * @createDate 2017-12-05
     */
    List<OperateAddressVO> getAddressList(String parentAddressId) throws Exception;


    /**
     * <desc>
     *     处理手机号码归属地，+0 or -0
     * </desc>
     *
     * @param projectId 项目id
     * @return 处理的号码数
     * @author wangzhi
     * @createDate 2018-04-26
     */
    Integer handlePhoneNoAttributionGround(String projectId) throws Exception;
}
